#pragma once

#include "drawing.h"
#include "rasterizer.h"
#include "sampler.h"
#include "buffer.h"

typedef struct tag_render_16
{
	rasterizer16 * rasterizer;
	core_buffer * buffer;
	sampler_solid32 * sampler;
}render32;

void render32_clear(render32 * render, argb32 color);
void render32_clear_rgb24(render32 * render, rgb24 color);
void render32_clear_rgb16(render32 * render, rgb16 color);
void render32_move_to(render32 * render, int_16 x, int_16 y);
void render32_line_to(render32 * render, int_16 x, int_16 y);

void render32_set_pixel(render32 * render, int_16 x, int_16 y, argb32 color);

void render24_set_pixel(render32 * render, int_16 x, int_16 y, rgb24 color);
void render24_set_pixel_rgb16(render32 * render, int_16 x, int_16 y, rgb16 color);

void render32_rend(render32 * render);

